/*******************************************************************************
* This header contains definitions of several data types used in cvlibrary.
*  
* 
* Licensed under GPL Version 3 license (/license.txt).
* Author: Eder A. Perez (eder.perez@ice.ufjf.br)
*******************************************************************************/


#ifndef __CV_DATATYPES_H__
#define __CV_DATATYPES_H__

#include <stdint.h>

/*******************************************************************************/
/* Primitive data types with specific bit length                               */
/*******************************************************************************/

typedef int8_t   CVbyte_t;
typedef uint8_t  CVubyte_t;
typedef int16_t  CVint16_t;
typedef uint16_t CVuint16_t;
typedef int32_t  CVint32_t;
typedef uint32_t CVuint32_t;
typedef int16_t  CVshort_t;
typedef uint16_t CVushort_t;

typedef enum {
  
  CV_PXL_FMT_RGB24,
  CV_PXL_FMT_GRAY8,
  CV_PXL_FMT_YUV422 // 16bpp
  
} CVpixel_fmt_t;

#endif
